Skip to content

openvmm: add new package - #18444

Open
Ben Hillis (benhillis) wants to merge 2 commits into
microsoft:3.0-devfrom
benhillis:users/benhill/openvmm-rpm
Open

openvmm: add new package#18444
Ben Hillis (benhillis) wants to merge 2 commits into
microsoft:3.0-devfrom
benhillis:users/benhill/openvmm-rpm

Conversation

@benhillis

@benhillis Ben Hillis (benhillis) commented Aug 14, 2026

Copy link
Copy Markdown
Member
Merge Checklist
  • The toolchain has been rebuilt successfully (or no changes were made to it)
  • The toolchain/worker package manifests are up-to-date
  • Any updated packages successfully build (or no packages were changed)
  • Packages depending on static components modified in this PR (Golang, *-static subpackages, etc.) have had their Release tag incremented.
  • Package tests (%check section) have been verified with RUN_CHECK=y for existing SPEC files, or added to new SPEC files
  • All package sources are available
  • cgmanifest files are up-to-date and sorted (./cgmanifest.json, ./toolkit/scripts/toolchain/cgmanifest.json, .github/workflows/cgmanifest.json)
  • LICENSE-MAP files are up-to-date (./LICENSES-AND-NOTICES/SPECS/data/licenses.json, ./LICENSES-AND-NOTICES/SPECS/LICENSES-MAP.md, ./LICENSES-AND-NOTICES/SPECS/LICENSE-EXCEPTIONS.PHOTON)
  • All source files have up-to-date hashes in the *.signatures.json files
  • sudo make go-tidy-all and sudo make go-test-coverage pass
  • Documentation has been updated to match any changes to the build system
  • Ready to merge

Summary

Adds a package for OpenVMM, a modular, cross-platform virtual machine monitor written in Rust. Ships the openvmm host binary.

Important

Draft: this does not build on Azure Linux 3.0 yet. OpenVMM requires rust 1.95 and the distribution ships 1.90. A toolchain bump is in motion, and this is ready to move out of draft once it lands.

Built offline from the upstream release: the tag archive plus the vendor archive uploaded as a release asset.

Change Log
  • Add openvmm 0.1.0
Does this affect the toolchain?

NO

Test Methodology

Built in an mcr.microsoft.com/azurelinux/base/core:3.0 container from the published assets, supplying a 1.95 toolchain in place of the distribution's. Produces openvmm-0.1.0-1.azl3.x86_64.rpm, which installs with tdnf and reports openvmm 0.1.0.

A toolkit build has not been run, as it cannot pass until the toolchain lands.

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
There may be pipelines that require an authorized user to comment /azp run to run.

@microsoft-github-policy-service microsoft-github-policy-service Bot added Packaging 3.0-dev PRs Destined for AzureLinux 3.0 labels Aug 14, 2026
@benhillis

Copy link
Copy Markdown
Member Author

I believe the SPECS check failures are because I have not uploaded the release artifacts to the spec store, jslobodzian was going to point me to instructions on how to do that.

OpenVMM is a modular, cross-platform virtual machine monitor written in
Rust. This package ships the OpenVMM host binary, which runs virtual
machines on Linux via KVM or the Microsoft Hypervisor.

Source0 is the archive GitHub generates for the openvmm-v<version> tag.
Upstream publishes a single release asset, openvmm-<version>-vendor.tar.gz,
containing the vendored crate sources and the cargo_config source
replacement written by cargo vendor, so the package builds offline.

The package requires rust >= 1.95, which Azure Linux 3.0 does not ship
yet, so it does not build until the distribution toolchain advances.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@Redent0r

Copy link
Copy Markdown

I believe the SPECS check failures are because I have not uploaded the release artifacts to the spec store, jslobodzian was going to point me to instructions on how to do that.

Here are the instructions https://dev.azure.com/mariner-org/mariner/_wiki/wikis/mariner.wiki/1284/Source-Tar-Publishing , but I would leave that as the last step before merging (in case there's a need to amend the release sources)

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds OpenVMM 0.1.0 as an x86_64 package, pending the Rust 1.95 toolchain.

Changes:

  • Builds OpenVMM offline from vendored Rust sources.
  • Adds source integrity and component metadata.
  • Registers MIT licensing metadata.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
SPECS/openvmm/openvmm.spec Defines the OpenVMM RPM build and installation.
SPECS/openvmm/openvmm.signatures.json Records source hashes.
LICENSES-AND-NOTICES/SPECS/LICENSES-MAP.md Adds OpenVMM to the license map.
LICENSES-AND-NOTICES/SPECS/data/licenses.json Registers OpenVMM licensing data.
cgmanifest.json Adds OpenVMM component metadata.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread SPECS/openvmm/openvmm.spec Outdated
Comment thread SPECS/openvmm/openvmm.spec Outdated

@Redent0r Saul Paredes (Redent0r) left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, this needs to wait for #18511

Comment thread SPECS/openvmm/openvmm.spec Outdated
Comment thread SPECS/openvmm/openvmm.spec
The release profile sets debug = true, so suppressing debug_package left
the symbols out of any package. Drop the override so RPM produces the
debuginfo package.

Run the unit tests for the pure-logic crates in the binary's dependency
closure. 1053 tests, no virtualization required.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 50ad1e94-a714-4445-bf61-acec0dec4d22
Comment thread SPECS/openvmm/openvmm.spec
@benhillis
Ben Hillis (benhillis) marked this pull request as ready for review August 21, 2026 23:34
@benhillis
Ben Hillis (benhillis) requested a review from a team as a code owner August 21, 2026 23:34
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
There may be pipelines that require an authorized user to comment /azp run to run.

@benhillis

Ben Hillis (benhillis) commented Aug 21, 2026

Copy link
Copy Markdown
Member Author

The RPM build jobs are expected to fail on the toolchain until #17759 is merged.

@benhillis

Copy link
Copy Markdown
Member Author

/azp run

@azure-pipelines

Copy link
Copy Markdown
Commenter does not have sufficient privileges for PR 18444 in repo microsoft/azurelinux

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

3.0-dev PRs Destined for AzureLinux 3.0 Packaging

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants